1. Field of the Invention
The present invention relates generally to an improved data processing system and in particular to a computer implemented method, system, and computer usable program code for optimizing performance in a data processing system. Still more particularly, the present invention provides a computer implemented method, system, and computer usable program code for correcting a received e-mail having an erroneous header.
2. Description of the Related Art
As the Internet has matured, so has electronic mail which is also referred to as e-mail. However, humans make errors even with features such as e-mail address books and other tools provided, by e-mail user client software, known as e-mail clients. One example of a human error that may occur is when an e-mail user acts as an e-mail sender by sending out an e-mail to a group of e-mail recipients and enters an erroneous address for an intended e-mail recipient. An e-mail address for each intended recipient is included in a header for an e-mail. An erroneous header may be erroneous because it contains an e-mail address that the e-mail sender accidentally entered erroneously, or the erroneous header may be erroneous because it contains any e-mail address that an e-mail sender believes to be correct but which is actually erroneous.
If the e-mail sender entered an erroneous e-mail address in an e-mail sent to only one intended e-mail recipient, the solution is simple. A mail server is a computer program or software agent that transfers electronic mail from one computer to another computer and such a mail server may be unable to deliver the original e-mail to the intended recipient that is erroneously addressed. An intended recipient that is erroneously addressed is any intended e-mail recipient whose e-mail address is erroneous in the header. When an attempted delivery of the original e-mail fails, a mail server sends a delivery failure e-mail that contains the erroneous header with the failed e-mail address to the e-mail client for the e-mail sender. The delivery failure e-mail informs the e-mail client for the e-mail sender of the delivery failure for the original e-mail. After being informed of the delivery failure of the original e-mail to the erroneous e-mail address, the e-mail sender may correct the erroneous e-mail address in the erroneous header that the mail server returned in the delivery failure e-mail and send a copy of the original e-mail using the corrected e-mail address.
However, when an e-mail sender sends out an e-mail to a group of e-mail recipients and enters an erroneous address of an intended e-mail recipient, additional problems may arise. One such problem is illustrated by the following example. An e-mail sender, Oprah, plans to send an e-mail to the following intended e-mail recipients: Bob, Sam, and John, whose e-mail addresses are bob@abc.net, sam@ibm.com, and johni@ln.abc.net, respectively. However, Oprah enters the e-mail address of John as johnny@ln.abc.net. A mail server sends a delivery failure e-mail that contains the erroneous header with the failed e-mail address for John to the e-mail client for Oprah. The delivery failure e-mail informs the e-mail client for Oprah of the delivery failure for the original e-mail that Oprah attempted to send to John. Because Oprah correctly entered the e-mail addresses for Bob and Sam, the e-mail clients for Bob and Sam received the e-mail that Oprah sent. A received e-mail is an e-mail that a mail server has transferred to the e-mail client for the e-mail recipient. A recipient of a received e-mail is anyone whose e-mail client received the received e-mail. At this point, Oprah has sent the original e-mail to Bob and Sam but not to John.
Oprah then corrects the erroneous e-mail address for John in order to send a copy of the original e-mail. Oprah has a first option of sending a copy of the e-mail with the corrected e-mail address for John to all of the original intended recipients, Bob, Sam, and John. Oprah also has a second option of sending a copy of the e-mail with the corrected e-mail address for John to John alone, which is the most often used approach.
The problem with the first option is that both Bob and Sam receive two e-mails with the same content, the original e-mail with the erroneous e-mail address for John, and the second e-mail with the same content and the correct e-mail addresses for all of the original intended recipients. This problem is amplified when the e-mail sender sends the e-mail to a large number of intended e-mail recipients. The problem with the second option occurs if Bob or Sam wish to use a “reply all” feature of the e-mail client to respond to the e-mail. Because under the second option Bob and Sam have only the erroneous e-mail address for John in the received e-mail, Bob and Sam receive a delivery failure e-mail for any attempts to reply to all e-mail addresses listed in the original e-mail and any attempts to reply to all e-mail addresses do not send a reply to John. Additionally, similar problems occur when a recipient changes their e-mail address instead of when an e-mail sender enters an erroneous e-mail address for an intended recipient.
These and similar problems result in greater overhead in terms of data transmission in addition to a tedious correction process.